package chapter8;

class SimpleInheritance {

	// A simple example of inheritance.
	// Create a superclass.
	static class A {
		int i, j;

		void showij() {
			System.out.println("i and j: " + i + " " + j);
		}
	}

	// Create a subclass by extending class A.
	static class B extends A {
		int k;

		void showk() {
			System.out.println("k: " + k);
		}

		void sum() {
			System.out.println("i+j+k: " + (i + j + k));
		}
	}

	public static void main(String args[]) {
		A superOb = new A();
		B subOb = new B();
		// The superclass may be used by itself.
		superOb.i = 10;
		superOb.j = 20;
		System.out.println("Contents of superOb: ");
		superOb.showij();
		System.out.println();
		/*
		 * The subclass has access to all public members of its superclass.
		 */
		subOb.i = 7;
		subOb.j = 8;
		subOb.k = 9;
		System.out.println("Contents of subOb: ");
		subOb.showij();
		subOb.showk();
		System.out.println();
		System.out.println("Sum of i, j and k in subOb:");
		subOb.sum();
	}
}